#ifndef __LCD_INIT_H
#define __LCD_INIT_H

#include "ti_msp_dl_config.h"

#define USE_HORIZONTAL 0  //设置横屏或者竖屏显示 0或1为竖屏 2或3为横屏


#define LCD_W 240
#define LCD_H 240

#define u8  unsigned char
#define u16 unsigned int

#define  delay_ms(n) delay_cycles((CPUCLK_FREQ / 1000) * n)

//-----------------LCD端口定义---------------- 

// SCL = SCLK
#define LCD_SCLK_Clr() DL_GPIO_clearPins(GPIO_LCD_PORT, GPIO_LCD_PIN_SCL_PIN)
#define LCD_SCLK_Set() DL_GPIO_setPins(GPIO_LCD_PORT, GPIO_LCD_PIN_SCL_PIN)
// SDA = MOSI
#define LCD_MOSI_Clr() DL_GPIO_clearPins(GPIO_LCD_PORT, GPIO_LCD_PIN_SDA_PIN)
#define LCD_MOSI_Set() DL_GPIO_setPins(GPIO_LCD_PORT, GPIO_LCD_PIN_SDA_PIN)
// RES
#define LCD_RES_Clr() DL_GPIO_clearPins(GPIO_LCD_PORT, GPIO_LCD_PIN_RES_PIN)
#define LCD_RES_Set() DL_GPIO_setPins(GPIO_LCD_PORT, GPIO_LCD_PIN_RES_PIN)
// DC
#define LCD_DC_Clr() DL_GPIO_clearPins(GPIO_LCD_PORT, GPIO_LCD_PIN_DC_PIN) 
#define LCD_DC_Set() DL_GPIO_setPins(GPIO_LCD_PORT, GPIO_LCD_PIN_DC_PIN)
// CS
#define LCD_CS_Clr() DL_GPIO_clearPins(GPIO_LCD_PORT, GPIO_LCD_PIN_CS_PIN) 
#define LCD_CS_Set() DL_GPIO_setPins(GPIO_LCD_PORT, GPIO_LCD_PIN_CS_PIN)
// BLK - 没有这个引脚
#define LCD_BLK_Clr()  //GPIO_ResetBits(GPIOA,GPIO_Pin_5)//BLK
#define LCD_BLK_Set()  //GPIO_SetBits(GPIOA,GPIO_Pin_5)




void LCD_GPIO_Init(void);//初始化GPIO
void LCD_Writ_Bus(u8 dat);//模拟SPI时序
void LCD_WR_DATA8(u8 dat);//写入一个字节
void LCD_WR_DATA(u16 dat);//写入两个字节
void LCD_WR_REG(u8 dat);//写入一个指令
void LCD_Address_Set(u16 x1,u16 y1,u16 x2,u16 y2);//设置坐标函数
void LCD_Init(void);//LCD初始化
#endif




